home *** CD-ROM | disk | FTP | other *** search
/ SGI Performance Co-Pilot 1.3 / SGI Performance Co-Pilot 1.3.iso / dist / dist6.4 / pcp.idb / usr / share / catman / u_man / cat4 / pmns.z / pmns
Text File  |  1997-04-03  |  9KB  |  246 lines

  1.  
  2.  
  3.  
  4. PPPPMMMMNNNNSSSS((((4444))))                                                                PPPPMMMMNNNNSSSS((((4444))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ppppmmmmnnnnssss - the performance metrics name space
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      /_v_a_r/_p_c_p/_p_m_n_s
  13.  
  14. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  15.      When using the Performance Metrics Programming Interface (PMAPI) of the
  16.      Performance Co-Pilot (PCP), performance metrics are identified by an
  17.      external name in a hierarchic Performance Metrics Name Space (PMNS), and
  18.      an internal identifier, the Performance Metric Identifier (PMID).
  19.  
  20.      A PMNS specifies the association between a metric's name and its PMID.
  21.  
  22.      A PMNS is defined on one or more ASCII source files, that may be compiled
  23.      using ppppmmmmnnnnssssccccoooommmmpppp(1) to produce a binary PMNS.
  24.  
  25.      Client applications above the PMAPI use ppppmmmmLLLLooooaaaaddddNNNNaaaammmmeeeeSSSSppppaaaacccceeee(3) to load a
  26.      PMNS, and ppppmmmmLLLLooooaaaaddddNNNNaaaammmmeeeeSSSSppppaaaacccceeee(3) silently tolerates either the ASCII or
  27.      binary formats.  Alternatively, ppppmmmmLLLLooooaaaaddddAAAASSSSCCCCIIIIIIIINNNNaaaammmmeeeeSSSSppppaaaacccceeee(3) may be used to
  28.      load just the ASCII format.
  29.  
  30.      If the binary format is used, no checking is performed for aliasing in
  31.      which multiple names in the PMNS are associated with a single PMID.  If
  32.      the ASCII format is to be used, duplicate PMIDs are not allowed, although
  33.      ppppmmmmLLLLooooaaaaddddAAAASSSSCCCCIIIIIIIINNNNaaaammmmeeeeSSSSppppaaaacccceeee(3) provides an alternative interface with user-
  34.      defined control over the processing of duplicate PMIDs in an ASCII format
  35.      PMNS.
  36.  
  37.      There is one default PMNS in the files below /_v_a_r/_p_c_p/_p_m_n_s, although
  38.      users and application developers are free to create and use alternate
  39.      PMNS's.  For an example of this, see the PCP Tutorial in
  40.      /_v_a_r/_p_c_p/_d_e_m_o_s/_T_u_t_o_r_i_a_l.
  41.  
  42.      Use the environment variable PPPPMMMMNNNNSSSS____DDDDEEEEFFFFAAAAUUUULLLLTTTT to specify the pathname to a
  43.      file containg the root of an alternative default PMNS, else the ----nnnn
  44.      command line option may be used with most PCP applications.
  45.  
  46.      The external ASCII format for a PMNS conforms to the syntax and semantics
  47.      described in the following sections.
  48.  
  49. PPPPRRRROOOOCCCCEEEESSSSSSSSIIIINNNNGGGG FFFFRRRRAAAAMMMMEEEEWWWWOOOORRRRKKKK
  50.      The PMNS specification is initially passed through ccccpppppppp(1).  This means
  51.      the following facilities may be used in the specification
  52.  
  53.      +  C-style comments
  54.  
  55.      +  #_i_n_c_l_u_d_e directives
  56.  
  57.      +  #_d_e_f_i_n_e directives and macro substitution
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. PPPPMMMMNNNNSSSS((((4444))))                                                                PPPPMMMMNNNNSSSS((((4444))))
  71.  
  72.  
  73.  
  74.      +  conditional processing via #_i_f ...  #_e_n_d_i_f, etc.
  75.  
  76.      When ccccpppppppp(1) is executed, the ``standard'' include directories are the
  77.      current directory and /_v_a_r/_p_c_p/_p_m_n_s.
  78.  
  79. SSSSYYYYNNNNTTTTAAAAXXXX
  80.      The general syntax for a non-leaf node in the PMNS is as follows
  81.  
  82.      pathanme {
  83.           name      [pmid]
  84.           ...
  85.      }
  86.  
  87.      Where _p_a_t_h_n_a_m_e is the full pathname from the root of the PMNS to this
  88.      non-leaf node, with each component in the pathname separated by a ``.''.
  89.      The root node for the PMNS must have the special name ``root'', but the
  90.      common prefix ``root.'' must be omitted from all pathnames.  Each
  91.      component in the pathname must begin with an alphabetic character, and be
  92.      followed by zero more characters drawn from the alphabetrics, the digits
  93.      and the underscore ``_'') character.  For alphabetic characters in a
  94.      pathname component, upper and lower case are distinguished.
  95.  
  96.      Non-leaf nodes in the PMNS may be defined in any order.
  97.  
  98.      The descendent nodes are defined by the set of _n_a_m_e_s, relative to the
  99.      _p_a_t_h_n_a_m_e of their parent non-leaf node.  For the descendent nodes, leaf
  100.      nodes have a _p_m_i_d specification, non-leaf nodes do not.  The syntax for
  101.      the _p_m_i_d specification has been chosen to help manage the allocation of
  102.      PMIDs across disjoint and autonomous domains of administration and
  103.      implementation.  Each _p_m_i_d consists of 3 integer parts, separated by
  104.      colons, e.g. 14:27:11.  This hierarchic numbering scheme is intended to
  105.      mirror the implementation hierarchy of performance metric domain, metrics
  106.      cluster (data structure or operational similarity) and individual metric.
  107.      In practice, the two leading components are likely to be macros in the
  108.      PMNS specification source, and ccccpppppppp(1) will convert the macros to
  109.      integers.  These macros for the initial components of the _p_m_i_d are likely
  110.      to be defined either in a standard include file, e.g.
  111.      /_v_a_r/_p_c_p/_p_m_n_s/_s_t_d_p_m_i_d, or in the current source file.
  112.  
  113.      The current allocation of the high-order (PMD or domain) component of
  114.      PMIDs is as follows.
  115.                         ___________________________________
  116.                           Range          Allocation
  117.                         ___________________________________
  118.                                0   reserved
  119.                         ___________________________________
  120.                             1-31   SGI internal
  121.                         ___________________________________
  122.                            32-39   Oracle
  123.                         ___________________________________
  124.                         ___________________________________
  125.                         |||||||||
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.                                  |||||||||
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.                                                            |||||||||
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.                                                                         PPPPaaaaggggeeee 2222
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161. PPPPMMMMNNNNSSSS((((4444))))                                                                PPPPMMMMNNNNSSSS((((4444))))
  162.  
  163.  
  164.  
  165.                            40-47   Sybase
  166.                         ___________________________________
  167.                            48-55   Informix
  168.                         ___________________________________
  169.                           56-127   ISV Performance Metrics
  170.                         ___________________________________
  171.                          128-254   End-user applications
  172.                         ___________________________________
  173.                         ||||||||
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.                                  ||||||||
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.                                                            ||||||||
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196. EEEEXXXXAAAAMMMMPPPPLLLLEEEE
  197.      #define IRIX 1
  198.      root {
  199.          network
  200.          cpu
  201.      }
  202.  
  203.      #define NETWORK 26
  204.      network {
  205.          intrate                       IRIX:NETWORK:1
  206.          packetrate
  207.      }
  208.  
  209.      network.packetrate {
  210.          in                            IRIX:NETWORK:35
  211.          out                           IRIX:NETWORK:36
  212.      }
  213.  
  214.      #define CPU 10
  215.      cpu {
  216.          syscallrate                   IRIX:CPU:10
  217.          util
  218.      }
  219.  
  220.      #define USER 20
  221.      #define KERNEL 21
  222.      #define IDLE 22
  223.  
  224.      cpu.util {
  225.          user                          IRIX:CPU:USER
  226.          sys                           IRIX:CPU:KERNEL
  227.          idle                          IRIX:CPU:IDLE
  228.      }
  229.  
  230. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  231.      ppppmmmmnnnnssssccccoooommmmpppp(1), PPPPMMMMAAAAPPPPIIII(3), ppppmmmmEEEErrrrrrrrSSSSttttrrrr(3), ppppmmmmLLLLooooaaaaddddAAAASSSSCCCCIIIIIIIINNNNaaaammmmeeeeSSSSppppaaaacccceeee(3) and
  232.      ppppmmmmLLLLooooaaaaddddNNNNaaaammmmeeeeSSSSppppaaaacccceeee(3).
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.                                                                         PPPPaaaaggggeeee 3333
  243.  
  244.  
  245.  
  246.